//#include <bits/stdc++.h>
#include "head.h"

using namespace std;
using ll = long long;
#define int long long

void solve()
{
    string s;
    cin >> s;
    stack<char> st;
    for (auto e : s)
    {
        if (st.size() && e == ']')
        {
            if (st.top() == '[')
            {
                st.pop();
            }
            else st.push(e);
        }
        else if (st.size() && e == ')')
        {
            if (st.top() == '(')
            {
                st.pop();
            }
            else st.push(e);
        }
        else if (st.size() && e == '>')
        {
            if (st.top() == '<')
            {
                st.pop();
            }
            else st.push(e);
        }
        else st.push(e);
    }
    if (st.empty())
    {
        cout << "Yes";
        return;
    }
    if (st.size() & 1)
    {
        cout << "No";
        return;
    }
    while (st.size())
    {
        char c1 = st.top();
        st.pop();
        char c2 = st.top();
        st.pop();
        if (!((c1 == ')' && c2 == '(') || (c1 == '>' && c2 == '<') || (c1 == ']' && c2 == '[')))
        {
            cout << "No";
            return;
        }
    }
    cout << "Yes";
}

signed main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int t = 1;
    //cin >> t;
    while (t--)
    {
        solve();
    }
    return 0;
}